<?php

class BrandAction extends CommonAction{
public function index()
{
$map = $this->_search ();
if(trim($_REQUEST['name'])!='')
{
$map['name'] = array('like','%'.trim($_REQUEST['name']).'%');
}
if($this->get('default_map'))
$map = array_merge($map,$this->get('default_map'));
if (method_exists ( $this,'_filter')) {
$this->_filter ( $map );
}
$name=$this->getActionName();
$model = D ($name);
if (!empty ( $model )) {
$this->_list ( $model,$map );
}
$this->display ();
return;
}
public function add()
{
$cate_tree = M('ShopCate')->where('is_delete = 0')->findAll();
$cate_tree = D('ShopCate')->toFormatTree($cate_tree,'name');
$this->assign('cate_tree',$cate_tree);
$this->assign('new_sort',M(MODULE_NAME)->max('sort')+1);
$this->display();
}
public function insert() {
B('FilterString');
$ajax = intval($_REQUEST['ajax']);
$data = M(MODULE_NAME)->create ();
$data['begin_time'] = trim($data['begin_time'])==''?0:to_timespan($data['begin_time']);
$data['end_time'] = trim($data['end_time'])==''?0:to_timespan($data['end_time']);
$this->assign('jumpUrl',u(MODULE_NAME.'/add'));
if(!check_empty($data['name']))
{
$this->error(L('BRAND_NAME_EMPTY_TIP'));
}
$log_info = $data['name'];
$list=M(MODULE_NAME)->add($data);
if (false !== $list) {
syn_brand_status($list);
save_log($log_info.L('INSERT_SUCCESS'),1);
$this->success(L('INSERT_SUCCESS'));
}else {
save_log($log_info.L('INSERT_FAILED'),0);
$this->error(L('INSERT_FAILED'));
}
}
public function edit() {
$id = intval($_REQUEST ['id']);
$condition['id'] = $id;
$vo = M(MODULE_NAME)->where($condition)->find();
$vo['begin_time'] = $vo['begin_time']!=0?to_date($vo['begin_time']):'';
$vo['end_time'] = $vo['end_time']!=0?to_date($vo['end_time']):'';
$this->assign ( 'vo',$vo );
$cate_tree = M('ShopCate')->where('is_delete = 0')->findAll();
$cate_tree = D('ShopCate')->toFormatTree($cate_tree,'name');
$this->assign('cate_tree',$cate_tree);
$this->display ();
}
public function update() {
B('FilterString');
$data = M(MODULE_NAME)->create ();
$log_info = M(MODULE_NAME)->where('id='.intval($data['id']))->getField('name');
$this->assign('jumpUrl',u(MODULE_NAME.'/edit',array('id'=>$data['id'])));
if(!check_empty($data['name']))
{
$this->error(L('BRAND_NAME_EMPTY_TIP'));
}
$data['begin_time'] = trim($data['begin_time'])==''?0:to_timespan($data['begin_time']);
$data['end_time'] = trim($data['end_time'])==''?0:to_timespan($data['end_time']);
$list=M(MODULE_NAME)->save ($data);
if (false !== $list) {
M('Deal')->where('brand_id='.$data['id'].' and brand_promote = 1')->setField('begin_time',$data['begin_time']);
M('Deal')->where('brand_id='.$data['id'].' and brand_promote = 1')->setField('end_time',$data['end_time']);
syn_brand_status($data['id']);
save_log($log_info.L('UPDATE_SUCCESS'),1);
$this->success(L('UPDATE_SUCCESS'));
}else {
save_log($log_info.L('UPDATE_FAILED'),0);
$this->error(L('UPDATE_FAILED'),0,$log_info.L('UPDATE_FAILED'));
}
}
public function foreverdelete() {
$ajax = intval($_REQUEST['ajax']);
$id = $_REQUEST ['id'];
if (isset ( $id )) {
$condition = array ('id'=>array ('in',explode ( ',',$id ) ) );
$rel_data = M(MODULE_NAME)->where($condition)->findAll();
foreach($rel_data as $data)
{
$info[] = $data['name'];
}
if($info) $info = implode(',',$info);
$list = M(MODULE_NAME)->where ( $condition )->delete();
if ($list!==false) {
M('SupplierLocationBrandLink')->where(array ('brand_id'=>array ('in',explode ( ',',$id ) )))->delete();
M('Deal')->where(array ('brand_id'=>array ('in',explode ( ',',$id ) )))->setField('brand_id',0);
M('Youhui')->where(array ('brand_id'=>array ('in',explode ( ',',$id ) )))->setField('brand_id',0);
save_log($info.l('DELETE_SUCCESS'),1);
$this->success (l('DELETE_SUCCESS'),$ajax);
}else {
save_log($info.l('DELETE_FAILED'),0);
$this->error (l('DELETE_FAILED'),$ajax);
}
}else {
$this->error (l('INVALID_OPERATION'),$ajax);
}
}
public function set_sort()
{
$id = intval($_REQUEST['id']);
$sort = intval($_REQUEST['sort']);
$log_info = M(MODULE_NAME)->where('id='.$id)->getField('name');
if(!check_sort($sort))
{
$this->error(l('SORT_FAILED'),1);
}
M(MODULE_NAME)->where('id='.$id)->setField('sort',$sort);
save_log($log_info.l('SORT_SUCCESS'),1);
$this->success(l('SORT_SUCCESS'),1);
}
}

?>